package com.xinhe.web.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.time.LocalDate;
import java.util.Date;

@Data
@Entity
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = "adapay商户详情")
@Table(name = "tb_adapay_merchant")
public class AdapayMerchant {
    @Id
    @ApiModelProperty("id")
    private Long id;
    @ApiModelProperty("门店Id(预留)")
    private Long shopId;
    @ApiModelProperty("商家id")
    private Long sellerShopId;
    @ApiModelProperty("注册手机号")
    private String usrPhone;
    @ApiModelProperty("联系人姓名")
    private String contName;
    @ApiModelProperty("联系人手机号码")
    private String contPhone;
    @ApiModelProperty("电子邮箱")
    private String customerEmail;
    @ApiModelProperty("开户许可证")
    private String accountOpeningPermitPic;
    @ApiModelProperty("商户类型：1-企业；2-小微")
    private Integer entryMerchantType;
    @ApiModelProperty("商户名，小微商户填负责人姓名")
    private String merchantName;
    @ApiModelProperty("商户名简称")
    private String merchantShortName;
    @ApiModelProperty("营业执照，企业时必填")
    private String licensePic;
    @ApiModelProperty("营业执照编码，如三证合一传三证合一码，企业时必填")
    private String licenseCode;
    @ApiModelProperty("注册地址")
    private String registerAddress;
    @ApiModelProperty("经营地址")
    private String businessAddress;
    @ApiModelProperty("商户电话")
    private String merchantPhone;
    @ApiModelProperty("商户有效日期（始）")
    private LocalDate merchantStartValidDate;
    @ApiModelProperty("商户有效日期（止）")
    private LocalDate merchantEndValidDate;
    @ApiModelProperty("法人/负责人姓名")
    private String legalName;
    @ApiModelProperty("法人/负责人证件类型，0-身份证")
    private Integer legalType;
    @ApiModelProperty("法人/负责人证件号码")
    private String legalIdNo;
    @ApiModelProperty("法人/负责人身份证正面")
    private String legalCertIdFrontPic;
    @ApiModelProperty("法人/负责人身份证反面")
    private String legalCertIdBackPic;
    @ApiModelProperty("法人/负责人手机号")
    private String legalPhone;
    @ApiModelProperty("法人/负责人身份证有效期（始）")
    private LocalDate legalStartCertIdExpires;
    @ApiModelProperty("法人/负责人身份证有效期（至）")
    private LocalDate legalEndCertIdExpires;
    @ApiModelProperty("微信经营类目（入驻使用）")
    private String wxCategory;
    @ApiModelProperty("支付宝经营类目（入驻使用）")
    private String alipayCategory;
    @ApiModelProperty("行业分类（入驻使用）")
    private String clsId;
    @ApiModelProperty("商户种类（入驻使用）")
    private String merchantType;
    @ApiModelProperty("省份编码（入驻使用）")
    private String provinceCode;
    @ApiModelProperty("城市编码（入驻使用）")
    private String cityCode;
    @ApiModelProperty("区县编码（入驻使用）")
    private String districtCode;
    @ApiModelProperty("结算银行信息Id")
    private Long adapaySettlementBankId;
    @ApiModelProperty("进件状态（0：处理中，1：已成功）")
    private Integer entryStatus;
    @ApiModelProperty("入驻状态（-1：未提交，0：处理中，1：入驻成功，2：入驻失败）")
    private Integer residentStatus;
    @ApiModelProperty("初始化分销状态（0：未初始化，1：已初始化）")
    private Integer initDistributionStatus;
    @ApiModelProperty("入驻状态失败原因")
    private String residentStatusRemark;
    @ApiModelProperty("证件审核状态（-1：未提交，0：审核中，1：已成功，2：拒绝）")
    private Integer certificateCheckStatus;
    @ApiModelProperty("证件审核状态拒绝原因")
    private String certificateCheckStatusRemark;
    @ApiModelProperty("RSA公钥")
    private String publicKey;
    @ApiModelProperty("RSA私钥")
    private String privateKey;
    @ApiModelProperty("请求Id")
    private String requestId;
    @ApiModelProperty("应用appId")
    private String appId;
    @ApiModelProperty("测试API Key")
    private String testApiKey;
    @ApiModelProperty("生产API Key")
    private String liveApiKey;
    @ApiModelProperty("进件回调")
    private String entryResponse;
    @ApiModelProperty("入驻回调")
    private String residentResponse;

    @ApiModelProperty("标注")
    private String remark;
    @ApiModelProperty("版本数")
    private Integer version_num;
    @ApiModelProperty("是否被移除 0否 1是")
    private Integer removed;
    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("更新时间")
    private Date updateTime;
    @ApiModelProperty("创建人")
    private Long fCreateUserId;
    @ApiModelProperty("更新人")
    private Long fUpdateUserId;
}
